(SW Expert Academy) 객체지향 - 6203번 6208번 6217번 6223번

1번 - 6203번

  • 시간 : 1개 테스트케이스를 합쳐서 Python의 경우 1초
  • 메모리 : 힙, 정적 메모리 합쳐서 256MB 이내, 스택 메모리 1MB 이내

성적 총합 출력

class subject:
def **init**(self, kor, eng, math):
self.**kor = kor
self.**eng = eng
self.\_\_math = math

def total(self):
return self.__kor+self.__eng+self.__math

score = input().split(', ')

stduent = subject(int(score[0]),int(score[1]),int(score[2]))
print("국어, 영어, 수학의 총점: {}".format(stduent.total()))

2번 - 6208번

  • 시간 : 1개 테스트케이스를 합쳐서 Python의 경우 1초
  • 메모리 : 힙, 정적 메모리 합쳐서 256MB 이내, 스택 메모리 1MB 이내

국적 두 번 출력

class Korean:
def printNationality(self):
print("대한민국")

korean = Korean()
korean.printNationality()
korean.printNationality()

3번 - 6217번

  • 시간 : 1개 테스트케이스를 합쳐서 Python의 경우 1초
  • 메모리 : 힙, 정적 메모리 합쳐서 256MB 이내, 스택 메모리 1MB 이내

이렇게 하는게 맞는건지 잘 모르겠다…

class Student:
"""Parnet/Super class"""
\_name1 = "홍길동"
\_name2 = "이순신"

@property
def name(self):
return self._name

@name.setter
def name(self, name):
self._name = name

def show(self):
print("이름: "+self._name1)

class GraduateStudent(Student):
"""Child/Sub class"""
\_\_major = "컴퓨터"

def __init__(self):
self.__name = super()._name2

def show(self):
print("이름: {}, 전공: {}".format(self.__name, self.__major))

Student().show()
GraduateStudent().show()

4번 - 6223번

  • 시간 : 1개 테스트케이스를 합쳐서 Python의 경우 1초
  • 메모리 : 힙, 정적 메모리 합쳐서 256MB 이내, 스택 메모리 1MB 이내

원의 면적을 구할 때, 파이(pi)를 파이썬의 math를 사용하여 계산하려 했지만 출력 결과는 소수점 둘째 자리까지인데 버림이 되어있다.
round() 를 사용하여 반올림하면 결과값이 다르게 나와서 파이를 3.14로 계산 하였다.
round() 함수에서 반올림은 사사오입 원칙을 따른다는 것을 기억!!

import math

class Circle:
\_\_radius = 2

def area(self):
return 3.14*(self.__radius**2)

print("원의 면적: {}".format(Circle().area()))